package campus.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class CredentialsLogExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CredentialsLogExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andJzIdIsNull() {
            addCriterion("jz_id is null");
            return (Criteria) this;
        }

        public Criteria andJzIdIsNotNull() {
            addCriterion("jz_id is not null");
            return (Criteria) this;
        }

        public Criteria andJzIdEqualTo(Integer value) {
            addCriterion("jz_id =", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdNotEqualTo(Integer value) {
            addCriterion("jz_id <>", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdGreaterThan(Integer value) {
            addCriterion("jz_id >", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("jz_id >=", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdLessThan(Integer value) {
            addCriterion("jz_id <", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdLessThanOrEqualTo(Integer value) {
            addCriterion("jz_id <=", value, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdIn(List<Integer> values) {
            addCriterion("jz_id in", values, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdNotIn(List<Integer> values) {
            addCriterion("jz_id not in", values, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdBetween(Integer value1, Integer value2) {
            addCriterion("jz_id between", value1, value2, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzIdNotBetween(Integer value1, Integer value2) {
            addCriterion("jz_id not between", value1, value2, "jzId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdIsNull() {
            addCriterion("jz_km_id is null");
            return (Criteria) this;
        }

        public Criteria andJzKmIdIsNotNull() {
            addCriterion("jz_km_id is not null");
            return (Criteria) this;
        }

        public Criteria andJzKmIdEqualTo(Integer value) {
            addCriterion("jz_km_id =", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdNotEqualTo(Integer value) {
            addCriterion("jz_km_id <>", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdGreaterThan(Integer value) {
            addCriterion("jz_km_id >", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("jz_km_id >=", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdLessThan(Integer value) {
            addCriterion("jz_km_id <", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdLessThanOrEqualTo(Integer value) {
            addCriterion("jz_km_id <=", value, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdIn(List<Integer> values) {
            addCriterion("jz_km_id in", values, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdNotIn(List<Integer> values) {
            addCriterion("jz_km_id not in", values, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdBetween(Integer value1, Integer value2) {
            addCriterion("jz_km_id between", value1, value2, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzKmIdNotBetween(Integer value1, Integer value2) {
            addCriterion("jz_km_id not between", value1, value2, "jzKmId");
            return (Criteria) this;
        }

        public Criteria andJzAbstractIsNull() {
            addCriterion("jz_Abstract is null");
            return (Criteria) this;
        }

        public Criteria andJzAbstractIsNotNull() {
            addCriterion("jz_Abstract is not null");
            return (Criteria) this;
        }

        public Criteria andJzAbstractEqualTo(String value) {
            addCriterion("jz_Abstract =", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractNotEqualTo(String value) {
            addCriterion("jz_Abstract <>", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractGreaterThan(String value) {
            addCriterion("jz_Abstract >", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractGreaterThanOrEqualTo(String value) {
            addCriterion("jz_Abstract >=", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractLessThan(String value) {
            addCriterion("jz_Abstract <", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractLessThanOrEqualTo(String value) {
            addCriterion("jz_Abstract <=", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractLike(String value) {
            addCriterion("jz_Abstract like", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractNotLike(String value) {
            addCriterion("jz_Abstract not like", value, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractIn(List<String> values) {
            addCriterion("jz_Abstract in", values, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractNotIn(List<String> values) {
            addCriterion("jz_Abstract not in", values, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractBetween(String value1, String value2) {
            addCriterion("jz_Abstract between", value1, value2, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzAbstractNotBetween(String value1, String value2) {
            addCriterion("jz_Abstract not between", value1, value2, "jzAbstract");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceIsNull() {
            addCriterion("jz_jfprice is null");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceIsNotNull() {
            addCriterion("jz_jfprice is not null");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceEqualTo(String value) {
            addCriterion("jz_jfprice =", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceNotEqualTo(String value) {
            addCriterion("jz_jfprice <>", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceGreaterThan(String value) {
            addCriterion("jz_jfprice >", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceGreaterThanOrEqualTo(String value) {
            addCriterion("jz_jfprice >=", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceLessThan(String value) {
            addCriterion("jz_jfprice <", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceLessThanOrEqualTo(String value) {
            addCriterion("jz_jfprice <=", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceLike(String value) {
            addCriterion("jz_jfprice like", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceNotLike(String value) {
            addCriterion("jz_jfprice not like", value, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceIn(List<String> values) {
            addCriterion("jz_jfprice in", values, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceNotIn(List<String> values) {
            addCriterion("jz_jfprice not in", values, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceBetween(String value1, String value2) {
            addCriterion("jz_jfprice between", value1, value2, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzJfpriceNotBetween(String value1, String value2) {
            addCriterion("jz_jfprice not between", value1, value2, "jzJfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceIsNull() {
            addCriterion("jz_dfprice is null");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceIsNotNull() {
            addCriterion("jz_dfprice is not null");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceEqualTo(String value) {
            addCriterion("jz_dfprice =", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceNotEqualTo(String value) {
            addCriterion("jz_dfprice <>", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceGreaterThan(String value) {
            addCriterion("jz_dfprice >", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceGreaterThanOrEqualTo(String value) {
            addCriterion("jz_dfprice >=", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceLessThan(String value) {
            addCriterion("jz_dfprice <", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceLessThanOrEqualTo(String value) {
            addCriterion("jz_dfprice <=", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceLike(String value) {
            addCriterion("jz_dfprice like", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceNotLike(String value) {
            addCriterion("jz_dfprice not like", value, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceIn(List<String> values) {
            addCriterion("jz_dfprice in", values, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceNotIn(List<String> values) {
            addCriterion("jz_dfprice not in", values, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceBetween(String value1, String value2) {
            addCriterion("jz_dfprice between", value1, value2, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzDfpriceNotBetween(String value1, String value2) {
            addCriterion("jz_dfprice not between", value1, value2, "jzDfprice");
            return (Criteria) this;
        }

        public Criteria andJzProofIsNull() {
            addCriterion("jz_proof is null");
            return (Criteria) this;
        }

        public Criteria andJzProofIsNotNull() {
            addCriterion("jz_proof is not null");
            return (Criteria) this;
        }

        public Criteria andJzProofEqualTo(String value) {
            addCriterion("jz_proof =", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofNotEqualTo(String value) {
            addCriterion("jz_proof <>", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofGreaterThan(String value) {
            addCriterion("jz_proof >", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofGreaterThanOrEqualTo(String value) {
            addCriterion("jz_proof >=", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofLessThan(String value) {
            addCriterion("jz_proof <", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofLessThanOrEqualTo(String value) {
            addCriterion("jz_proof <=", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofLike(String value) {
            addCriterion("jz_proof like", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofNotLike(String value) {
            addCriterion("jz_proof not like", value, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofIn(List<String> values) {
            addCriterion("jz_proof in", values, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofNotIn(List<String> values) {
            addCriterion("jz_proof not in", values, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofBetween(String value1, String value2) {
            addCriterion("jz_proof between", value1, value2, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzProofNotBetween(String value1, String value2) {
            addCriterion("jz_proof not between", value1, value2, "jzProof");
            return (Criteria) this;
        }

        public Criteria andJzHIsNull() {
            addCriterion("jz_h is null");
            return (Criteria) this;
        }

        public Criteria andJzHIsNotNull() {
            addCriterion("jz_h is not null");
            return (Criteria) this;
        }

        public Criteria andJzHEqualTo(Integer value) {
            addCriterion("jz_h =", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHNotEqualTo(Integer value) {
            addCriterion("jz_h <>", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHGreaterThan(Integer value) {
            addCriterion("jz_h >", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHGreaterThanOrEqualTo(Integer value) {
            addCriterion("jz_h >=", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHLessThan(Integer value) {
            addCriterion("jz_h <", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHLessThanOrEqualTo(Integer value) {
            addCriterion("jz_h <=", value, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHIn(List<Integer> values) {
            addCriterion("jz_h in", values, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHNotIn(List<Integer> values) {
            addCriterion("jz_h not in", values, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHBetween(Integer value1, Integer value2) {
            addCriterion("jz_h between", value1, value2, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzHNotBetween(Integer value1, Integer value2) {
            addCriterion("jz_h not between", value1, value2, "jzH");
            return (Criteria) this;
        }

        public Criteria andJzDateIsNull() {
            addCriterion("jz_date is null");
            return (Criteria) this;
        }

        public Criteria andJzDateIsNotNull() {
            addCriterion("jz_date is not null");
            return (Criteria) this;
        }

        public Criteria andJzDateEqualTo(Date value) {
            addCriterion("jz_date =", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateNotEqualTo(Date value) {
            addCriterion("jz_date <>", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateGreaterThan(Date value) {
            addCriterion("jz_date >", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateGreaterThanOrEqualTo(Date value) {
            addCriterion("jz_date >=", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateLessThan(Date value) {
            addCriterion("jz_date <", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateLessThanOrEqualTo(Date value) {
            addCriterion("jz_date <=", value, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateIn(List<Date> values) {
            addCriterion("jz_date in", values, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateNotIn(List<Date> values) {
            addCriterion("jz_date not in", values, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateBetween(Date value1, Date value2) {
            addCriterion("jz_date between", value1, value2, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzDateNotBetween(Date value1, Date value2) {
            addCriterion("jz_date not between", value1, value2, "jzDate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateIsNull() {
            addCriterion("jz_createDate is null");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateIsNotNull() {
            addCriterion("jz_createDate is not null");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateEqualTo(Date value) {
            addCriterion("jz_createDate =", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateNotEqualTo(Date value) {
            addCriterion("jz_createDate <>", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateGreaterThan(Date value) {
            addCriterion("jz_createDate >", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateGreaterThanOrEqualTo(Date value) {
            addCriterion("jz_createDate >=", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateLessThan(Date value) {
            addCriterion("jz_createDate <", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateLessThanOrEqualTo(Date value) {
            addCriterion("jz_createDate <=", value, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateIn(List<Date> values) {
            addCriterion("jz_createDate in", values, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateNotIn(List<Date> values) {
            addCriterion("jz_createDate not in", values, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateBetween(Date value1, Date value2) {
            addCriterion("jz_createDate between", value1, value2, "jzCreatedate");
            return (Criteria) this;
        }

        public Criteria andJzCreatedateNotBetween(Date value1, Date value2) {
            addCriterion("jz_createDate not between", value1, value2, "jzCreatedate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}